1. Field of the Invention
The present invention relates to a coordinate data generating apparatus, and more particularly, it relates to an apparatus for generating coordinate data for moving a cursor which appears on a screen of a display.
2. Description of the Prior Art
In data processors such as a personal computer, a television game machine, etc., increasingly complicated application softwares and game theories have promoted a necessity of rapid data input. A "mouse", namely, a coordinate data generating apparatus has been used to rapidly input data into such a data processor.
The mouse has a ball which rotates as the mouse moves, and it converts rotations of the ball into coordinate data in a two-dimensional plane and output the coordinate data. Specifically, the mouse detects rotations of the ball in two axial (X-axis and Y-axis) directions, and it outputs results of detection about both of the axes as coordinate data. A direction of the mouse and an amount of displacement of the mouse are expressed with a composite vector about the two axes. The data processor controls a position of a cursor on a screen of a display device like a CRT (cathode ray tube) display based upon the coordinate data received from the mouse. Controlling an amount of displacement of the cursor in this way, selection of a menu or command, plotting, etc. can be practiced rapidly.
In the case where the mouse is used to move the cursor on the screen, the cursor moves in proportion to the movement of the mouse. For example, assuming that the cursor moves by 5 cm when the mouse moves by 10 cm, the cursor moves by 10 cm when the mouse moves by 20 cm. In this case, even if the mouse moves quickly, an amount of displacement of the cursor simply depends upon an amount of displacement of the mouse. It is an annoying work for the operator to move mouse a long distance to move the cursor a long distance.
To overcome such disadvantage, there has been proposed a system for variably setting a rate of the displacement amount of the cursor to that of the mouse in accordance with a velocity of the moving mouse. This system is called "displacement amount varying system", which is disclosed, for example, in Japanese Unexamined Patent Publications 117324/1985 and 131116/1986. In such a displacement amount varying system, the rate of the displacement amount of the cursor to that of the mouse is set small like 1:1 or 2:1 with a slow movement of the mouse, while the rate of the displacement amount of the cursor to that of the mouse is set large like 3:1, 4:1 or the like with a quick movement of the mouse. FIG. 11 and FIG. 12 are diagrams for explaining relations between the velocity of the moving mouse and the displacement amount of the cursor in the displacement amount varying system. As shown in FIG. 11, when the mouse moves slowly, a displacement amount of the cursor to that of the mouse is small. On the other hand, as shown in FIG. 12, when the mouse moves quickly, the displacement amount of the cursor to that of the mouse is large. Thus, a quick movement of the mouse causes the cursor to move a long distance, and this requires only a small range for the mouse to move on a table.
In such a displacement amount varying system of the prior art, a correction of the displacement amount of the cursor according to the velocity of the moving mouse is controlled about one axis separately from the other. Specifically, in the prior art displacement amount varying system, the velocity of the moving mouse is found about X-axis and Y-axis directions, and the displacement amount of the cursor is corrected about one axial direction independent of the other in accordance with the velocity of the mouse moving in each axial direction. Hence, there arises problems as explained below when the cursor is moved diagonally across the screen of the display device.
FIGS. 13 and 14 are graphs showing relations between a vector of the movement of the mouse and a vector of the movement of the cursor. In FIGS. 13 and 14, broken line A represents the vector of the movement of the mouse while solid line B represents the vector of the movement of the cursor.
FIG. 13 shows a case where an angle .theta. between the X-axis and the vector A of the movement of the mouse is smaller than 45.degree.. In this case, an X-axis component of the velocity of the mouse is larger than its Y-axis component. Consequently, in a correction rate of the displacement amount of the cursor to that of the mouse, the correction rate about the X-axis direction is larger than that about the Y-axis direction. This means that a displacement amount of the cursor in the X-axis direction in accordance with a unit displacement amount of the mouse in the X-axis direction is longer than a displacement amount of the cursor in the Y-axis direction in accordance with the unit displacement amount of the mouse in the Y-axis direction. Thus, an angle .alpha. between the X-axis and the vector B of the movement of the cursor is smaller than the angle .theta.; that is, the direction of the movement of the cursor does not coincide with the direction of the movement of the mouse.
FIG. 14 shows a case where the angle .theta. between the X-axis and the vector A of the movement of the mouse is larger than 45.degree.. In this case, a Y-axis component of the velocity of the mouse is larger than its X-axis component. Consequently, in a correction rate of the displacement amount of the cursor to that of the mouse, the correction rate about the Y-axis direction is larger than the correction rate about the X-axis direction. This means that a displacement amount of the cursor in the Y-axis direction in accordance with a unit displacement amount of the mouse in the Y-axis direction is longer than a displacement amount of the cursor in the X-axis direction in accordance with the unit displacement amount of the mouse in the X-axis direction. Thus, the angle .alpha. between the X-axis and the vector B of the movement of the cursor is larger than the angle .theta.; that is, the direction of the movement of the cursor does not coincide with the direction of the movement of the mouse.
As described above, in the displacement amount varying system of the prior art, when the mouse moves diagonally, the direction of the movement of the mouse and that of the cursor deviate from each other. The operator feels considerably uncomfortable to a deviation caused between those directions during the operation, because it is very difficult for him or her to move the cursor in any desired direction. For example, when the cursor is to be moved diagonally across the screen from the lower left to the upper right, the cursor actually moves in a direction along the angle .alpha. in spite of the operator's intention to move the cursor in a direction along the angle .theta.. Moreover, since the velocity of the movement of the mouse is varied each time the operator uses the mouse, the direction of the movement of the cursor is accordingly varied each time, and the destination of the cursor is never in accord with the direction of the movement of the mouse on any trial.